Uniprocessor Garbage Collection Techniques 1 Automatic Storage Reclamation
نویسنده
چکیده
We survey basic garbage collection algorithms, and variations such as incremental and generational collection. The basic algorithms include reference counting, mark-sweep, mark-compact, copying, and treadmill collection. Incremental techniques can keep garbage collection pause times short, by interleaving small amounts of collection work with program execution. Generational schemes improve efficiency and locality by garbage collecting a smaller area more often, while exploiting typical lifetime characteristics to avoid undue overhead from long-lived objects. 1 Automatic Storage Reclamation Garbage collection is the automatic reclamation of computer storage [Knu69, Coh81, App91]. While in many systems programmers must explicitly reclaim heap memory at some point in the program, by using a “free” or “dispose” statement, garbage collected systems free the programmer from this burden. The garbage collector’s function is to find data objects that are no longer in use and make their space available for reuse by the the running program. An object is considered garbage (and subject to reclamation) if it is not reachable by the running program via any path of pointer traversals. Live (potentially reachable) objects are preserved by the collector, ensuring that the program can never traverse a “dangling pointer” into a deallocated object. This paper is intended to be an introductory survey of garbage collectors for uniprocessors, especially those developed in the last decade. For a more thorough treatment of older techniques, see [Knu69, Coh81].
منابع مشابه
Uniprocessor Garbage Collection Techniques
We survey basic garbage collection algorithms and variations such as incremental and gen erational collection The basic algorithms include reference counting mark sweep mark compact copy ing and treadmill collection Incremental techniques can keep garbage collection pause times short by interleaving small amounts of collection work with program execution Generational schemes improve e ciency an...
متن کاملGarbage Collection in Distributed Object Systems
Large-scale, distributed computer systems are less reliable than their smallscale, non-distributed counterparts. A significant proportion of the reliability problems are due to the very poor scalability of manual storage management techniques—the reclamation of unused storage in particular. The bulk of automatic garbage reclamation in both message-passing and shared memory systems, with certain...
متن کاملPartition Selection Policies in Object Database Garbage
The automatic reclamation of storage for unreferenced objects is very important in object databases. Existing language system algorithms for automatic storage reclamation have been shown to be inappropriate. In this paper , we investigate methods to improve the performance of algorithms for automatic storage reclamation of object databases. These algorithms are based on a technique called parti...
متن کاملConcurrent garbage collection for C++
Automatic storage management, or garbage collection, is a feature usually associated with languages oriented toward "symbolic processing," such as Lisp or Prolog; it is seldom associated with "systems" languages, such as C and C++. This report surveys techniques for performing garbage collection for languages such as C and C++, and presents an implementation of a concurrent copying collector fo...
متن کاملPartition Selection Policies in Object Database Garbage CollectionJonathan
The automatic reclamation of storage for unreferenced objects is very important in object databases. Existing language system algorithms for automatic storage reclamation have been shown to be inappropriate. In this paper , we investigate methods to improve the performance of algorithms for automatic storage reclamation of object databases. These algorithms are based on a technique called parti...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1992